home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Language/OS - Multiplatform Resource Library
/
LANGUAGE OS.iso
/
gnu
/
ghview15.gz
/
ghostview-1.5.tar
/
ghostview-1.5
/
GhostviewP.h
< prev
next >
Wrap
C/C++ Source or Header
|
1993-07-23
|
4KB
|
121 lines
/*
* GhostviewP.h -- Private header file for Ghostview widget.
* Copyright (C) 1992 Timothy O. Theisen
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*
* Author: Tim Theisen Systems Programmer
* Internet: tim@cs.wisc.edu Department of Computer Sciences
* UUCP: uwvax!tim University of Wisconsin-Madison
* Phone: (608)262-0438 1210 West Dayton Street
* FAX: (608)262-9777 Madison, WI 53706
*/
#ifndef _GhostviewP_h
#define _GhostviewP_h
#include "Ghostview.h"
#include <X11/Xmu/Atoms.h>
#include <X11/Xmu/CharSet.h>
#include <stdio.h>
typedef struct {
AtomPtr ghostview;
AtomPtr gv_colors;
AtomPtr next;
AtomPtr page;
AtomPtr done;
} GhostviewClassPart;
typedef struct _GhostviewClassRec {
CoreClassPart core_class;
GhostviewClassPart ghostview_class;
} GhostviewClassRec;
extern GhostviewClassRec ghostviewClassRec;
/* structure to describe section of file to send to ghostscript */
struct record_list {
FILE *fp;
long begin;
unsigned int len;
Boolean seek_needed;
Boolean close;
struct record_list *next;
};
typedef struct {
/* resources */
Pixel foreground;
Cursor cursor;
Cursor busy_cursor;
XtCallbackList callback;
XtCallbackList message_callback;
XtCallbackList output_callback;
String interpreter;
Boolean quiet;
Boolean safer;
Boolean use_bpixmap;
String arguments;
String filename;
XtPageOrientation orientation;
XtPalette palette;
float xdpi;
float ydpi;
int llx;
int lly;
int urx;
int ury;
int left_margin;
int bottom_margin;
int right_margin;
int top_margin;
/* private state */
GC gc; /* GC used to clear window */
Window mwin; /* destination of ghostsript messages */
Boolean disable_start; /* whether to fork ghostscript */
int interpreter_pid;/* pid of ghostscript, -1 if none */
struct record_list *ps_input; /* pointer it gs input queue */
char *input_buffer; /* pointer to input buffer */
unsigned int bytes_left; /* bytes left in section */
#ifndef VMS
char *input_buffer_ptr; /* pointer into input buffer */
unsigned int buffer_bytes_left; /* bytes left in buffer */
#endif
int interpreter_input; /* fd gs stdin, -1 if None */
int interpreter_output; /* fd gs stdout, -1 if None */
#ifndef VMS
int interpreter_error; /* fd gs stderr, -1 if None */
XtInputId interpreter_input_id; /* XtInputId for above */
XtInputId interpreter_output_id; /* XtInputId for above */
XtInputId interpreter_error_id; /* XtInputId for above */
#else /* VMS */
short interpreter_input_iosb[4]; /* I/O Status Blocks */
short interpreter_output_iosb[4]; /* for each mailbox */
char *output_buffer; /* pointer to output buffer */
#endif /* VMS */
Dimension gs_width; /* Width of window at last Setup() */
Dimension gs_height; /* Height of window at last Setup() */
Boolean busy; /* Is gs busy drawing? */
Boolean changed; /* something changed since Setup()? */
} GhostviewPart;
typedef struct _GhostviewRec {
CorePart core;
GhostviewPart ghostview;
} GhostviewRec;
#endif /* _GhostviewP_h */